package com.dao.impl;

import com.dao.ProductTypeDao;
import com.pojo.ProductType;
import com.utils.JDBCUtil;

import java.util.List;

public class ProductTypeDaoImpl implements ProductTypeDao {
    /**
     * 根据id获取一条数据
     * @param id
     * @return
     */
    @Override
    public ProductType findByID(String id) {
        return JDBCUtil.queryOne(ProductType.class,"select * from s_product_type where id = ?",id);
    }

    /**
     * 获取分页所有的数据
     * @return
     */
    @Override
    public List<ProductType> findAll(int start,int limit) {
        return JDBCUtil.queryList(ProductType.class,"select * from s_product_type limit ?,?",start,limit);
    }

    /**
     * 根据ID删除一条数据
     * @param id
     * @return
     */
    @Override
    public int deletePT(String id) {
        return JDBCUtil.update("delete from s_product_type where id = ?",id);
    }

    /**
     * 修改
     * @param productType
     * @return
     */
    @Override
    public int updatePT(ProductType productType) {
        return JDBCUtil.update("update s_product_type set product_type_name = ? , product_type_desc = ? , product_type_icon = ? where id = ?",productType.getProductTypeName(),productType.getProductTypeDesc(),productType.getProductTypeIcon(),productType.getId());
    }

    /**
     * 添加
     * @param productType
     * @return
     */
    @Override
    public int addPT(ProductType productType) {
        return JDBCUtil.update("insert into s_product_type values(?,?,?,?)",productType.getId(),productType.getProductTypeName(),productType.getProductTypeDesc(),productType.getProductTypeIcon());
    }

    /**
     * 获取行数做分页
     * @return
     */
    @Override
    public int selectCount() {
        return JDBCUtil.queryCount("select count(*) from s_product_type");
    }

    /**
     * 查询所有
     * @return
     */
    @Override
    public List<ProductType> findAll() {
        return JDBCUtil.queryList(ProductType.class,"select * from s_product_type");
    }

    /**
     * 根据名字查询
     * @param name
     * @return
     */
    @Override
    public ProductType findByName(String name) {
        return JDBCUtil.queryOne(ProductType.class,"select * from s_product_type where product_type_name = ?",name);
    }
}
